import java.util.*;

public abstract class ColasAbstractas<Tipo> {
	
	/**
	 * Atributos
	 */
	protected LinkedList<Tipo> datos;
	
	/**
	 * Agrega un elemento al final de la cola
	 */
	public boolean add(Tipo dato)
	{
		
		datos.addFirst(dato);
		return true;
	}
	
	/**
	 *Devuelve el primer elemento de la cola y lo borra
	 */
	public Tipo remove()
	{
	
		return datos.removeLast();
	}
	
	
	
	/**
	 * Devuelve true si la cola esta vacía, si no false
	 */
	public boolean isEmpty()
	{
		
		if(datos.size()==0)
			return true;
		else
			return false;
	}
	
	/**
	 * Devuelve el tamaño de la cola
	 */
	public int size()
	{
		return datos.size();
	}
	
	/**
	 * Método que borra todo en la cola
	 */
	public void clear()
	{
		datos.clear();
	}

}
